随笔分类
特点
并发性与共享性实则是相互依赖的
- 如果失去了并发性,则系统中只有一个程序正在运行,则共享型市区存在的意义
- 如果市区了共享性,那么多进程也就不会去同时去访问资源,即无法实现并发
并发与共享是 os中最基本的两个功能
并发
计算机系统中 "同时"运行着多个程序
- 宏观并行
- 微观串行
需要区分多核 cpu能够在一个时间点上运行多个程序
共享
即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用
两种资源共享方式
-
互斥共享模式
系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段只允许一个进程访问该资源
-
同时共享模式
系统中的某些资源,可以提供给多个 "同时"运行的进程使用
这些进程之间可能是 "交替"去访问系统资源的
虚拟
把一个物理上的实体变为若干个逻辑上的对应物
程序运行前,需先加载到内存中,为其分配 cpu
程序实际所需的内存总和远大于本机内存,为什么程序还可正常运行
这便是因为 os采用了 "虚拟内存 (虚拟存储器)",虚拟内存属于虚拟技术中 "空分复用技术"的一种
虚拟技术中还有一种:时分复用技术
- 微观上处理机会在各个微小的时间段内为每个进程提供服务
异步
在多道程序下,允许多个程序并发执行,但由于 资源有限,并发执行的进程不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性
如果缺少了并发性,程序相当于是一贯到底的执行了,此时并不会出现资源争抢的 case
- 只有系统拥有了并发性,才会有异步性